﻿
var isWinner = false;
//strengir sem birtast í sprettigluggum
var winner = "Þú hefur unnið leik !";
var gameOver = "Leik lokið !";

// fylki sem inniheldur allar mögulegar
// vinnings samsetningar -Daníel Brandur
var sheen = [
	[1, 2, 3],
	[4, 5, 6],
	[7, 8, 9],
	[1, 4, 7],
	[2, 5, 8],
	[3, 6, 9],
	[1, 5, 9],
	[3, 5, 7],
];

//takki til þess að stofna nýjan leik
function showButton() {
    document.getElementById('button').style.visibility = "visible";
}

//fall sem athugar hvort upp hefur komið vinningssamsetning
//Daníel Brandur hjálpaði við gerð þessa falls
function checkForWinner() {
    for (var i = 0; i < 8; i++) {
        var currArray = sheen[i];
        var cellA = document.getElementById("cell" + (currArray[0]));
        var cellB = document.getElementById("cell" + (currArray[1]));
        var cellC = document.getElementById("cell" + (currArray[2]));

        if ($(cellA).text() == 'X'
			&& $(cellB).text() == 'X'
			&& $(cellC).text() == 'X') {
            // Winner!
            alert(winner);
            return true;
        }
    }
    return false;
}

$(function game() {
    //console.log(player1); 
    //console.log(group);

    //tengjumst TTTGameHub
    var hub = $.connection.tTTGameHub;

    //sýnum "hefja nýjan leik" takka
    showButton();

    //fall sem var gefið, leikmaður O smellir í reit
    hub.client.cellClicked = function (cellId) {
        $("#" + cellId).text("O");
        $("#message").text("Það er komið að þér");
        ++currentPlayer;
    };

    $.connection.hub.start().done(function () {
        hub.server.join(group);
        $("#tictactoe tr td").click(function () {
            if (currentPlayer % 2 === 1) { //leikmaður X smellir ef modulus af currentPlayer er 0
                hub.server.clickCell(group, this.id);
                $(this).text("X");
                if (checkForWinner()) { //eftir hverja svona umferð athugum við hvort vinningssamsetning hafi orðið til
                    console.log("Game has been won - sending message to server");
                    hub.server.setWinner(group, playerId); //ef við fundum vinningssamsetningu skráum við stig hjá þeim leikmanni
                }
                $("#message").text("");
                ++currentPlayer;
            }
        });
        if (currentPlayer > 9) {
            alert(gameOver);
        }
    });
});
